home *** CD-ROM | disk | FTP | other *** search
- Option Explicit
-
- ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
- ' Conditions
-
- Function Condition_Message_From_AddressOrName_Description()
- Condition_Message_From_AddressOrName_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_FROM_ADDRESSORNAME)
- End Function
- Function Condition_Message_From_AddressOrName(Message, AddressOrName)
- Condition_Message_From_AddressOrName = InStr(1, Message.Headers.Get(H_From), AddressOrName, 1)
- End Function
-
- Function Condition_Message_SubjectIs_LineOfText_Description()
- Condition_Message_SubjectIs_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SUBJECTIS_LINEOFTEXT)
- End Function
- Function Condition_Message_SubjectIs_LineOfText(Message, LineOfText)
- Condition_Message_SubjectIs_LineOfText = StrComp(Message.GetProperty(MSG_PROP_SUBJECT), LineOfText, 1) = 0
- End Function
-
- Function Condition_Message_SubjectContains_LineOfText_Description()
- Condition_Message_SubjectContains_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SUBJECTCONTAINS_LINEOFTEXT)
- End Function
- Function Condition_Message_SubjectContains_LineOfText(Message, LineOfText)
- Condition_Message_SubjectContains_LineOfText = InStr(1, Message.GetProperty(MSG_PROP_SUBJECT), LineOfText, 1)
- End Function
-
- Function Condition_Message_SubjectStartsWith_LineOfText_Description()
- Condition_Message_SubjectStartsWith_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SUBJECTSTARTSWITH_LINEOFTEXT)
- End Function
- Function Condition_Message_SubjectStartsWith_LineOfText(Message, LineOfText)
- Condition_Message_SubjectStartsWith_LineOfText = InStr(1, Message.GetProperty(MSG_PROP_SUBJECT), LineOfText, 1) = 1
- End Function
-
- Function Condition_Message_SubjectEndsWith_LineOfText_Description()
- Condition_Message_SubjectEndsWith_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SUBJECTENDSWITH_LINEOFTEXT)
- End Function
- Function Condition_Message_SubjectEndsWith_LineOfText(Message, LineOfText)
- Condition_Message_SubjectEndsWith_LineOfText = StrComp(Right(Message.GetProperty(MSG_PROP_SUBJECT), Len(LineOfText)), LineOfText, 1) = 0
- End Function
-
- Function Condition_Message_IAmTheOnlyRecipient__Description()
- Condition_Message_IAmTheOnlyRecipient__Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_IAMTHEONLYRECIPIENT_)
- End Function
- Function Condition_Message_IAmTheOnlyRecipient_(Message)
- Dim email: email = Application.UserInfo.Login
- Dim toField: toField = Message.GetProperty(MSG_PROP_TO)
- Dim ccField: ccField = Message.Headers.Get(H_Cc)
- If Len(toField) > 0 Then
- Condition_Message_IAmTheOnlyRecipient_ = Len(ccField) = 0 And InStr(1, toField, email, 1) And Application.MailSystem.IsValidByRFC822(toField)
- Else
- Condition_Message_IAmTheOnlyRecipient_ = Len(ccField) > 0 And InStr(1, ccField, email, 1) And Application.MailSystem.IsValidByRFC822(ccField)
- End If
- End Function
-
- Function Condition_Message_IAmNotTheOnlyRecipient__Description()
- Condition_Message_IAmNotTheOnlyRecipient__Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_IAMNOTTHEONLYRECIPIENT_)
- End Function
- Function Condition_Message_IAmNotTheOnlyRecipient_(Message)
- Condition_Message_IAmNotTheOnlyRecipient_ = Not Condition_Message_IAmTheOnlyRecipient_(Message)
- End Function
-
- Function Condition_Message_IAmNotOnToLine__Description()
- Condition_Message_IAmNotOnToLine__Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_IAMNOTONTOLINE_)
- End Function
- Function Condition_Message_IAmNotOnToLine_(Message)
- Dim email: email = Application.UserInfo.Login
- Condition_Message_IAmNotOnToLine_ = InStr(1, Message.GetProperty(MSG_PROP_TO), email, 1) = 0
- End Function
-
- Function Condition_Message_AddressedTo_AddressOrName_Description()
- Condition_Message_AddressedTo_AddressOrName_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_ADDRESSEDTO_ADDRESSORNAME)
- End Function
- Function Condition_Message_AddressedTo_AddressOrName(Message, AddressOrName)
- Condition_Message_AddressedTo_AddressOrName = InStr(1, Message.GetProperty(MSG_PROP_TO), AddressOrName, 1) Or InStr(1, Message.Headers.Get(H_Cc), AddressOrName, 1)
- End Function
-
- Function Condition_Message_TextContains_LineOfText_Description()
- Condition_Message_TextContains_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_TEXTCONTAINS_LINEOFTEXT)
- End Function
- Function Condition_Message_TextContains_LineOfText(Message, LineOfText)
- Condition_Message_TextContains_LineOfText = Message.ContainsText(LineOfText)
- End Function
-
- Function Condition_Message_HasAttachments__Description()
- Condition_Message_HasAttachments__Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_HASATTACHMENTS_)
- End Function
- Function Condition_Message_HasAttachments_(Message)
- Condition_Message_HasAttachments_ = Message.HasAttachments
- End Function
-
- Function Condition_Message_SizeLargerThan_Number_Description()
- Condition_Message_SizeLargerThan_Number_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SIZELARGERTHAN_NUMBER)
- End Function
- Function Condition_Message_SizeLargerThan_Number(Message, Number)
- Condition_Message_SizeLargerThan_Number = Message.ApproximateSize / 1024 > CInt(Number)
- End Function
-
-
- ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
- ' Actions
-
- Function Action_Message_MoveToFolder_Folder_Description()
- Action_Message_MoveToFolder_Folder_Description = Application.LoadString(IDS_FILTER_ACTION_MESSAGE_MOVETOFOLDER_FOLDER)
- End Function
- Function Action_Message_MoveToFolder_Folder(Message, Folder)
- Action_Message_MoveToFolder_Folder = True
- dim FolderObject: Set FolderObject = Application.MailSystem.MailStore.GetRoot.Folders.Item(Folder)
- If TypeName(FolderObject) = "Nothing" Then Set FolderObject = Application.MailSystem.MailStore.GetRoot.Folders.Add(Folder)
- Message.Folder = FolderObject
- End Function
-
- Function Action_Message_CopyToFolder_Folder_Description()
- Action_Message_CopyToFolder_Folder_Description = Application.LoadString(IDS_FILTER_ACTION_MESSAGE_COPYTOFOLDER_FOLDER)
- End Function
- Function Action_Message_CopyToFolder_Folder(Message, Folder)
- Action_Message_CopyToFolder_Folder = True
- dim FolderObject: Set FolderObject = Application.MailSystem.MailStore.GetRoot.Folders.Item(Folder)
- If TypeName(FolderObject) = "Nothing" Then Set FolderObject = Application.MailSystem.MailStore.GetRoot.Folders.Add(Folder)
- Message.CopyToFolder(FolderObject)
- End Function
-
- Function DAction_Message_Delete__Description()
- DAction_Message_Delete__Description = Application.LoadString(IDS_FILTER_ACTION_MESSAGE_DELETE_)
- End Function
- Function DAction_Message_Delete_(Message)
- DAction_Message_Delete_ = False
- Message.Folder = Application.MailSystem.MailStore.GetReservedFolder( FOLDER_DELETED )
- End Function
-
- Function Action_Message_MarkRead__Description()
- Action_Message_MarkRead__Description = Application.LoadString(IDS_FILTER_ACTION_MESSAGE_MARKREAD_)
- End Function
- Function Action_Message_MarkRead_(Message)
- Action_Message_MarkRead_ = True
- Message.Status = MSG_STATUS_READ
- End Function
-
- Function Action__MessageBox_LinesOfText_Description()
- Action__MessageBox_LinesOfText_Description = Application.LoadString(IDS_FILTER_ACTION__MESSAGEBOX_LINESOFTEXT)
- End Function
- Function Action__MessageBox_LinesOfText(LinesOfText)
- Action__MessageBox_LinesOfText = True
- Application.MessageBox "Juno", LinesOfText, 0
- End Function
-
- Function Action__Sound_SoundFile_Description()
- Action__Sound_SoundFile_Description = Application.LoadString(IDS_FILTER_ACTION__SOUND_SOUNDFILE)
- End Function
- Function Action__Sound_SoundFile(SoundFile)
- Action__Sound_SoundFile = True
- Application.PlaySound SoundFile
- End Function
-
- Function Action__Beep__Description()
- Action__Beep__Description = Application.LoadString(IDS_FILTER_ACTION__BEEP_)
- End Function
- Function Action__Beep_()
- Action__Beep_ = True
- Application.Beep
- End Function
-
- Function Action__RunProgram_ExeFile_Description()
- Action__RunProgram_ExeFile_Description = Application.LoadString(IDS_FILTER_ACTION__RUNPROGRAM_EXEFILE)
- End Function
- Function Action__RunProgram_ExeFile(ExeFile)
- Action__RunProgram_ExeFile = True
- On Error Resume Next
- Application.RunProgram ExeFile, "", 1
- If Err <> 0 Then
- Application.MessageBox Application.LoadString(IDS_FILTER_TITLE), Application.FormatMessage(IDP_FILTER_ACTION_RUNPROGRAM_EXEFILE_ERROR, ExeFile, Err.Description), 0
- Err.Clear
- End If
- End Function
-
-